package com.qijian.business.domain.vo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.qijian.common.annotation.Excel;
import com.qijian.common.core.domain.BaseEntity;
import com.qijian.common.enums.ApprovalDescriptionEnum;
import com.qijian.system.domain.Dept;
import com.qijian.tool.domain.Storage;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import org.hibernate.validator.constraints.Length;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 供应商对象 purm_supplier
 *
 * @author qijian
 * @date 2021-09-06
 */
@EqualsAndHashCode(callSuper = true)
@Data
@ToString
@TableName("purm_supplier")
public class SupplierExcelVo extends BaseEntity{
    private static final long serialVersionUID = 1L;

    /** 唯一id */
    @JsonSerialize(using= ToStringSerializer.class)
    @ApiModelProperty(value = "唯一id")
    @TableId(type = IdType.INPUT)
    private Long id;

    /** 名称 */
    @Excel(name = "名称", sort = 1)
    @ApiModelProperty(value = "名称")
    private String name;

    /** 编号 */
    @Excel(name = "编号", sort = 0)
    @ApiModelProperty(value = "编号")
    private String number;

    /** 供应商等级 */
    @Excel(name = "供应商等级", sort = 2)
    @ApiModelProperty(value = "供应商等级")
    private String level;

    @Excel(name = "供应商类型", sort = 3)
    @ApiModelProperty(value = "供应商类型")
    private String supplierType;

    /** 省 */
    @Excel(name = "地区", sort = 4)
    @ApiModelProperty(value = "省")
    private String province;


    /** 分类名称 */
    @Excel(name = "分组", sort = 6)
    @ApiModelProperty(value = "分组")
    private String classifyName;


    /** 行业 */
    @Excel(name = "行业", sort = 7)
    @ApiModelProperty(value = "行业")
    private String trade;


    /** 供应商联系人id */
    @Excel(name = "供应商联系人", sort = 8)
    @JsonSerialize(using= ToStringSerializer.class)
    @ApiModelProperty(value = "供应商联系人id")
    private String supplierContactName;

    /**
     * 部门
     */
    @Excel(name = "部门", sort = 9)
    @ApiModelProperty(value = "部门")
    private String dept;

    /**
     * 职位
     */
    @Excel(name = "职位", sort = 10)
    @ApiModelProperty(value = "职位")
    private String position;

    /**
     * 手机号
     */
    @Excel(name = "手机号", sort = 12)
    @ApiModelProperty(value = "手机号")
    @Length(max = 11, message = "手机号最大长度为11")
    private String telephone;

    /**
     * 办公电话
     */
    @Excel(name = "办公电话", sort = 11)
    @ApiModelProperty(value = "办公电话")
    private String officePhone;

    @Excel(name = "重审状态", sort = 12)
    @ApiModelProperty(value = "审核状态")
    private ApprovalDescriptionEnum approvalReviewStatus;

    @Excel(name = "审核时间", sort = 13)
    @ApiModelProperty(value = "申请人部门名")
    private String approvalTime;
}
